package com.medical.model.param;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.medical.utils.JsonUtils;
import lombok.*;

import java.util.List;

/**
 * @author TISNIW
 * @version 1.0
 * @date 2025/6/14 0:18
 * @desc
 */
@Getter
@Setter
@Builder
@NoArgsConstructor
@AllArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Messages {
    @JsonProperty("role")
    private String role;//  "system" | "user" | "assistant" | "tool"
    @JsonProperty("content")
    private String content;//消息内容,必填
    @JsonProperty("thinking")
    private String thinking;//模型思考过程
    @JsonProperty("images")
    private List<String> images;//图片列表
    @JsonProperty("tools")
    private List<Tools> toolCalls;

    @Override
    public String toString() {
        return JsonUtils.writeValueAsString(this);
    }
}
